package lianxi;

import java.util.HashMap;
import java.util.Map;

/**
 * 1 取出一个字符串中字母出现的次数。如：字符串：”abcdekka27qoq”，
 * 
 * 输出格式为：a(2)b(1)k(2)…
 * 
 * 思路 : 用集合存储
 * 
 * 判断有没有这个元素,有的话 value 加 1 ,没有就添加
 * 
 * @author lenovo
 * @date 2020年7月30日 @time 上午9:05:24
 */
public class _01_ {

	public static void main(String[] args) {
		String s = new String("abcdekka27qoq");
		Map<Character, Integer> data = new HashMap<Character, Integer>();

		// 定义一个变量 c 存放取出的元素
		char c = ' ';

		for (int i = 0; i < s.length(); i++) {
			c = s.charAt(i);
			if ((c >= 65 && c <= 91) || (c >= 97 && c <= 123)) {
				if (data.containsKey(c)) {
					data.put(c, data.get(c) + 1);
				} else {
					data.put(c, 1);
				}
			}

		}

		// 遍历打印集合
		for (Character key : data.keySet()) {
			// 遍历同时打印 value 值
			Integer value = data.get(key);
			System.out.print(key + "(" + value + ")");
		}
	}

}
